package org.jeecg.modules.analysis.trend.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serializable;
import java.util.List;

/**
 * @Description: 技术趋势视图对象
 * @Author: jeecg-boot
 * @Date: 2025-11-04
 * @Version: V1.0
 */
@Data
@Schema(description = "技术趋势视图对象")
public class TechnologyTrendVO implements Serializable {
    
    private static final long serialVersionUID = 1L;
    
    /** 技术分类ID */
    @Schema(description = "技术分类ID")
    private String technologyId;
    
    /** 技术分类名称 */
    @Schema(description = "技术分类名称")
    private String technologyName;
    
    /** 总数量 */
    @Schema(description = "总数量")
    private Integer totalCount;
    
    /** 年度数据列表 */
    @Schema(description = "年度数据列表")
    private List<YearDataVO> yearDataList;
    
    /**
     * 年度数据视图对象
     */
    @Data
    @Schema(description = "年度数据视图对象")
    public static class YearDataVO implements Serializable {
        
        private static final long serialVersionUID = 1L;
        
        /** 年份 */
        @Schema(description = "年份")
        private Integer year;
        
        /** 数量 */
        @Schema(description = "数量")
        private Integer count;
        
        /** 环比增长率 */
        @Schema(description = "环比增长率")
        private Double growthRate;
    }
}
